<template>
	<view class="publish" v-if="show">
		<view class="publish-bg" @click="hide()">

		</view>
		<view class="publish-main">
			<view class="publish-main-list">
				<view class="publish-main-list-item u-flex" @click="jumpPage(0)">
					<image class="publish-main-list-item-icon" src="https://zaiyiqi-1322608024.cos.ap-nanjing.myqcloud.com/static/img/publish/activity.png" mode="">
					</image>
					<view class="u-flex" style="flex-direction: column;align-items: flex-start;width: 190rpx;">
						<view class="publish-main-list-item-title">
							发布活动
						</view>
						<view class="publish-main-list-item-dsc">
							仅限VIP和合作商
						</view>
					</view>
				</view>
				<view class="publish-main-list-item u-flex" @click="jumpPage(1)">
					<image class="publish-main-list-item-icon" src="https://zaiyiqi-1322608024.cos.ap-nanjing.myqcloud.com/static/img/publish/trend.png" mode="">
					</image>
					<view class="u-flex" style="flex-direction: column;align-items: flex-start;width: 190rpx;">
						<view class="publish-main-list-item-title">
							发布帖子
						</view>
						<view class="publish-main-list-item-dsc">
							分享趣味生活
						</view>
					</view>
				</view>
				<view class="publish-main-list-item u-flex" @click="jumpPage(2)">
					<image class="publish-main-list-item-icon" src="https://zaiyiqi-1322608024.cos.ap-nanjing.myqcloud.com/static/img/publish/help.png" mode="">
					</image>
					<view class="u-flex" style="flex-direction: column;align-items: flex-start;width: 190rpx;">
						<view class="publish-main-list-item-title">
							发布求助
						</view>
						<view class="publish-main-list-item-dsc">
							寻求TA人解答
						</view>
					</view>
				</view>
				<view class="publish-main-list-item u-flex" @click="jumpPage(3)">
					<image class="publish-main-list-item-icon" src="https://zaiyiqi-1322608024.cos.ap-nanjing.myqcloud.com/static/img/publish/vote.png" mode="">
					</image>
					<view class="u-flex" style="flex-direction: column;align-items: flex-start;width: 190rpx;">
						<view class="publish-main-list-item-title">
							发布投票
						</view>
						<view class="publish-main-list-item-dsc">
							了解更多的Ta
						</view>
					</view>
				</view>
			</view>
			<!-- <view class="publish-main-close" @click="hide()">
				<image src="https://zaiyiqi-1322608024.cos.ap-nanjing.myqcloud.com/static/img/publish/close.png" style="height: 60rpx;width: 60rpx;" mode=""></image>
			</view> -->
		</view>
	</view>
</template>

<script>
import {
	mapState,
	mapMutations,
	mapAction
} from 'vuex'
//这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
export default {
	// 组件名称
	name: 'demo',
	// 组件参数 接收来自父组件的数据
	props: {},
	// 局部注册的组件,import引入的组件需要注入到对象中才能使用
	components: {},
	// 组件状态值
	data() {
		return {
			show: false
		}
	},
	// 计算属性
	computed: {
		showPublishPageState() {
			return this.$store.getters.showPublishPage
		}
	},
	// 侦听器
	watch: {
		showPublishPageState() {
			this.show = this.$store.getters.showPublishPage
		}
	},
	// 组件方法
	methods: {
		hide() {
			this.$store.commit("changeShowPublishPage", false)
		},
		jumpPage(index) {
			switch (index) {
				case 0:
					this.$store.commit("changeShowPublishPage", false)
					this.$Router.push({
						path: "/pages/public/public-activity"
					})
					break;
				case 1:
					this.$store.commit("changeShowPublishPage", false)
					this.$Router.push({
						path: "/pages/public/public-trends"
					})
					break;
				case 2:
					this.$store.commit("changeShowPublishPage", false)
					this.$Router.push({
						path: "/pages/public/public-help"
					})
					break;
				case 3:
					this.$store.commit("changeShowPublishPage", false)
					this.$Router.push({
						path: "/pages/public/public-vote"
					})
					break;
				default:
					break;
			}
		}
	},
	// 以下是生命周期钩子   注：没用到的钩子请自行删除
	/**
	 * 在实例初始化之后，组件属性计算之前，如data属性等
	 */
	beforeCreate() { },
	/**
	 * 组件实例创建完成，属性已绑定，但DOM还未生成，$ el属性还不存在
	 */
	created() { },
	/**
	 * 在挂载开始之前被调用：相关的 render 函数首次被调用。
	 */
	beforeMount() { },
	/**
	 * el 被新创建的 vm.$ el 替换，并挂载到实例上去之后调用该钩子。
	 * 如果 root 实例挂载了一个文档内元素，当 mounted 被调用时 vm.$ el 也在文档内。
	 */
	mounted() { },
	/**
	 * 数据更新时调用，发生在虚拟 DOM 重新渲染和打补丁之前。
	 * 你可以在这个钩子中进一步地更改状态，这不会触发附加的重渲染过程。
	 */
	beforeUpdate() { },
	/**
	 * 由于数据更改导致的虚拟 DOM 重新渲染和打补丁，在这之后会调用该钩子。
	 * 当这个钩子被调用时，组件 DOM 已经更新，所以你现在可以执行依赖于 DOM 的操作。
	 */
	updated() { },
	/**
	 * keep-alive 组件激活时调用。 仅针对keep-alive 组件有效
	 */
	activated() { },
	/**
	 * keep-alive 组件停用时调用。 仅针对keep-alive 组件有效
	 */
	deactivated() { },
	/**
	 * 实例销毁之前调用。在这一步，实例仍然完全可用。
	 */
	beforeDestroy() { },
	/**
	 * Vue 实例销毁后调用。调用后，Vue 实例指示的所有东西都会解绑定，
	 * 所有的事件监听器会被移除，所有的子实例也会被销毁。
	 */
	destroyed() { }
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<!--使用了scoped属性之后，父组件的style样式将不会渗透到子组件中，-->
<!--然而子组件的根节点元素会同时被设置了scoped的父css样式和设置了scoped的子css样式影响，-->
<style scoped lang="scss">
.publish {
	width: 100%;
	height: 100%;
	position: fixed;

	top: 0;
	left: 0;
	z-index: 999;

	&-bg {
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.8);
	}

	&-main {
		position: absolute;
		width: 100%;
		left: 0;
		bottom: 100rpx;
		display: flex;
		flex-direction: column;
		justify-content: center;
		text-align: center;

		&-list {
			&-item {
				justify-content: center;
				margin-bottom: 40rpx;

				&-icon {
					height: 120rpx;
					width: 120rpx;
					margin-right: 20rpx;
				}

				&-title {
					font-size: 32rpx;
					font-family: PingFang SC, PingFang SC;
					font-weight: 400;
					color: #FFFFFF;
					margin-bottom: 16rpx;
				}

				&-dsc {
					font-size: 24rpx;
					font-family: PingFang SC, PingFang SC;
					font-weight: 400;
					color: #E7E7E7;
				}
			}

			&-item:nth-of-type(4n-1) {}
		}
	}
}
</style>
